package com.wing.enterprise.product.model.response;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import java.time.LocalDateTime;

/**
 * VO
 *
 * @author
 */
@Data
@NoArgsConstructor
@Accessors(chain = true)
public class ProcessInfoVO {

    /**
     * ID
     */
    private Long id;

    /**
     * 创建时间
     */
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;

    /**
     * 创建者
     */
    private Long creator;

    /**
     * 修改者
     */
    private Long modifier;

    /**
     * 创建人
     */
    private String creatorName;

    /**
     * 修改人
     */
    private String modifierName;

    /**
     * 节点类型
     */
    private String nodeTypes;

    /**
     * 节点类型名称
     */
    private String nodeTypesName;

    /**
     * 工序性质
     */
    private String processNature;

    /**
     * 工序性质名称
     */
    private String processNatureName;

    /**
     * 节点名称
     */
    private String nodeNames;

    /**
     * 节点编码
     */
    private String nodeCodes;

    /**
     * 是否支持委外
     */
    private String isOutsource;

    /**
     * 是否用到工序
     */
    private String isUseknifeProcess;

    /**
     * 排序
     */
    private Integer sortNumber;

    /**
     * 备注
     */
    private String remark;

    private Long roomInfoId;

    private Long roomInfoName;
    /**
     * 是否被选择
     */
    private Boolean elect = false;

    /**
     * 状态
     */
    private String status;

    /**
     * 状态名称
     */
    private String statusName;

    /**
     * 生成物资类别
     */
    private String productTypeIf;

    /**
     * 物料类别性质
     */
    private String productTypeNature;

    /**
     * 物料类别性质名称
     */
    private String productTypeNatureName;

    /**
     * 所属物资类别
     */
    private Long parentProductType;

    /**
     * 所属物资类别名称
     */
    private String parentProductTypeName;

    /**
     * 类别维护部门
     */
    private Long typeServiceDepartment;

    /**
     * 类别维护部门名称
     */
    private String typeServiceDepartmentName;

    /**
     * 是否需要质检
     */
    private String qualityIf;

    /**
     * 检验频率
     */
    private String qualityRate;

    /**
     * 检验频率名称
     */
    private String qualityRateName;

    /**
     * 创建工序仓
     */
    private String processWarehouseIf;

    /**
     * 是否一物一码
     */
    private String thingCodeStatus;

    /**
     * 是否有质保期
     */
    private String guaranteeStatus;

    /**
     * 是否先进先出
     */
    private String inoutStatus;

    /**
     * 物资类别ID
     */
    private Long productTypeId;

    /**
     * 物资类别名称
     */
    private String productTypeName;

    /**
     * 工序仓ID
     */
    private Long warehouseId;

    /**
     * 工序仓名称
     */
    private String warehouseName;

}
